f = 1 : 1 : zipWith (+) f (tail f)

answer :: [Integer] -> Int -> (Integer,Int)
answer (x:xs) init
       | length (show x) >= 3 = (x,init)
       | otherwise = answer xs (init+1)